package ua.diploma.core;

import java.math.BigInteger;
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;

import org.apache.log4j.Logger;

/**
 * Шифрование пароля с помощью MD5
 * 
 * @author netstalk3r
 *
 */
public class PasswordEncryptor {

	/**
	 * логгер
	 */
	private static Logger log = Logger.getLogger(PasswordEncryptor.class);

	private static final String FORMAT = "%032X";
	private static final String ALGORYTHM = "MD5";

	// шифрование в MD5
	public String encrypt(String toHash) throws NoSuchAlgorithmException {
		log.info("Шифрование пароля");
		MessageDigest messageDigest = MessageDigest.getInstance(ALGORYTHM);
		byte[] data = toHash.getBytes();
		messageDigest.update(data, 0, data.length);
		BigInteger number = new BigInteger(1, messageDigest.digest());
		return String.format(FORMAT, number);
	}
}
